Handle flushing implicit paint while there is a paint outstanding
authorAlexander Larsson <alexl@redhat.com>
Tue, 26 May 2009 09:30:46 +0000 (11:30 +0200)
committerAlexander Larsson <alexl@redhat.com>
Tue, 26 May 2009 09:30:46 +0000 (11:30 +0200)
commit8a689f2e15411572b4bc8e5db65e625237ebfdcd
tree403b2046337d920553f01df28b61eef6210ed1b9
parent7698daf97aced5c22aeeb7bfbf02567b61cebaef
Handle flushing implicit paint while there is a paint outstanding

If a native window or a window with a native subwindow is moved or resized
then the client window moves and implicit paints need to be flushed since
the native window move will copy/overwrite data. This may happen while there
is an outstanding paint if the move is inside an expose event (weird, but
flash embedded in webkit hit this).

Right now we're asserting here, but the right fix is to allow this but
to not flush the parts that are currently in a (non-implicit) paint. This
means we flush all results from previous not-yet-flushed exposes, but not
the ones being drawn.
gdk/gdkwindow.c